package com.hsjk.szwj.module.pay.controller.app.transfer.vo;

import com.hsjk.szwj.module.pay.dal.dataobject.config.AbstractResp;
import com.hsjk.szwj.module.pay.dal.dataobject.order.TransferOrderDO;
import lombok.Data;
import org.springframework.beans.BeanUtils;

/**
 * @author chenjiawei
 * @desc 创建订单(统一订单) 响应参数
 * @Date 2023/08/26 15:24
 **/
@Data
public class TransferOrderRespVO extends AbstractResp {

    /**
     * 转账单号
     **/
    private Long transferId;

    /**
     * 商户单号
     **/
    private Long mchOrderId;

    /**
     * 转账金额
     **/
    private Long amount;

    /**
     * 收款账号
     */
    private String accountNo;

    /**
     * 收款人姓名
     */
    private String accountName;

    /**
     * 收款人开户行名称
     */
    private String bankName;

    /**
     * 状态
     **/
    private Byte state;

    /**
     * 渠道单号
     **/
    private String channelOrderNo;

    /**
     * 渠道返回错误代码
     **/
    private String errCode;

    /**
     * 渠道返回错误信息
     **/
    private String errMsg;

    public static TransferOrderRespVO buildByRecord(TransferOrderDO record) {

        if (record == null) {
            return null;
        }

        TransferOrderRespVO result = new TransferOrderRespVO();
        BeanUtils.copyProperties(record, result);

        return result;
    }
}
